home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-10-06 | 47.6 KB | 1,762 lines |
- dnl This is an autoconf script.
- dnl To rebuild the `configure' script from this, execute the command
- dnl autoconf
- dnl in the directory containing this script.
- [#!/bin/sh
- #### Configuration script for GNU Emacs
- #### Copyright (C) 1992, 1994 Free Software Foundation, Inc.
- #### This script requires autoconf version 1.9 or later.
-
- ### Don't edit this script!
- ### This script was automatically generated by the `autoconf' program
- ### from the file `./configure.in'.
- ### To rebuild it, execute the command
- ### autoconf
- ### in the this directory.
-
- ### This file is part of GNU Emacs.
-
- ### GNU Emacs is free software; you can redistribute it and/or modify
- ### it under the terms of the GNU General Public License as published by
- ### the Free Software Foundation; either version 2, or (at your option)
- ### any later version.
-
- ### GNU Emacs is distributed in the hope that it will be useful,
- ### but WITHOUT ANY WARRANTY; without even the implied warranty of
- ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- ### GNU General Public License for more details.
-
- ### You should have received a copy of the GNU General Public License
- ### along with GNU Emacs; see the file COPYING. If not, write to
- ### the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
-
- ### Since Emacs has configuration requirements that autoconf can't
- ### meet, this file is an unholy marriage of custom-baked
- ### configuration code and autoconf macros.
- ###
- ### We use the m4 quoting characters [ ] (as established by the
- ### autoconf system) to include large sections of raw sewage - Oops, I
- ### mean, shell code - in the final configuration script.
- ###
- ### Usage: configure config_name
- ###
- ### If configure succeeds, it leaves its status in config.status.
- ### If configure fails after disturbing the status quo,
- ### config.status is removed.
-
- ### Remove any more than one leading "." element from the path name.
- ### If we don't remove them, then another "./" will be prepended to
- ### the file name each time we use config.status, and the program name
- ### will get larger and larger. This wouldn't be a problem, except
- ### that since progname gets recorded in all the Makefiles this script
- ### produces, move-if-change thinks they're different when they're
- ### not.
- ###
- ### It would be nice if we could put the ./ in a \( \) group and then
- ### apply the * operator to that, so we remove as many leading ./././'s
- ### as are present, but some seds (like Ultrix's sed) don't allow you to
- ### apply * to a \( \) group. Bleah.
- progname="`echo $0 | sed 's:^\./\./:\./:'`"
-
-
- ### Establish some default values.
- run_in_place=
- single_tree=
- prefix='/usr/local'
- exec_prefix='${prefix}'
- bindir='${exec_prefix}/bin'
- datadir='${prefix}/lib'
- statedir='${prefix}/lib'
- libdir='${exec_prefix}/lib'
- mandir='${prefix}/man/man1'
- infodir='${prefix}/info'
- lispdir='${datadir}/emacs/${version}/lisp'
- locallisppath='${datadir}/emacs/site-lisp'
- lisppath='${locallisppath}:${lispdir}'
- etcdir='${datadir}/emacs/${version}/etc'
- lockdir='${statedir}/emacs/lock'
- archlibdir='${libdir}/emacs/${version}/${configuration}'
- docdir='${datadir}/emacs/${version}/etc'
-
- # On Sun systems, people sometimes set up the variable CPP
- # with a value that is a directory, not an executable at all.
- # Detect that case, and ignore that value.
- if [ "x$CPP" != x ] && [ -d "$CPP" ];
- then
- CPP=
- fi
-
- # We cannot use this variable in the case statement below, because many
- # /bin/sh's have broken semantics for "case". Unfortunately, you must
- # actually edit the clause itself.
- # path_options="prefix | exec_prefix | bindir | libdir | etcdir | datadir"
- # path_options="$path_options | archlibdir | statedir | mandir | infodir"
- # path_options="$path_options | lispdir | lockdir | lisppath | locallisppath"
-
- #### Usage messages.
-
- short_usage="Usage: ${progname} CONFIGURATION [-OPTION[=VALUE] ...]
-
- Set compilation and installation parameters for GNU Emacs, and report.
- CONFIGURATION specifies the machine and operating system to build for.
- --with-x Support the X Window System.
- --with-x=no Don't support X.
- --with-x-toolkit Use an X toolkit.
- --with-x-toolkit=no Don't use an X toolkit.
- --with-gcc Use GCC to compile Emacs.
- --with-gcc=no Don't use GCC to compile Emacs.
- --x-includes=DIR Search for X header files in DIR.
- --x-libraries=DIR Search for X libraries in DIR.
- --run-in-place Use libraries and data files directly out of the
- source tree.
- --single-tree=DIR Has the effect of creating a directory tree at DIR
- which looks like:
- .../DIR/bin/CONFIGNAME (emacs, etags, etc.)
- .../DIR/bin/CONFIGNAME/etc (movemail, etc.)
- .../DIR/common/lisp (emacs' lisp files)
- .../DIR/common/site-lisp (local lisp files)
- .../DIR/common/lib (DOC, TUTORIAL, etc.)
- .../DIR/common/lock (lockfiles)
- --srcdir=DIR Look for the Emacs source files in DIR.
- --prefix=DIR Install files below DIR. Defaults to \`${prefix}'.
-
- You may also specify any of the \`path' variables found in Makefile.in,
- including --bindir, --libdir, --etcdir, --infodir, and so on. This allows
- you to override a single default location when configuring.
-
- If successful, ${progname} leaves its status in config.status. If
- unsuccessful after disturbing the status quo, it removes config.status."
-
-
- #### Option processing.
-
- ### Record all the arguments, so we can save them in config.status.
- arguments="$@"
-
- ### Shell Magic: Quote the quoted arguments in ARGUMENTS. At a later date,
- ### in order to get the arguments back in $@, we have to do an
- ### `eval set x "$quoted_arguments"; shift'.
- quoted_arguments=
- for i in "$@"; do
- quoted_arguments="$quoted_arguments '$i'"
- done
-
- ### Don't use shift -- that destroys the argument list, which autoconf needs
- ### to produce config.status. It turns out that "set - ${arguments}" doesn't
- ### work portably.
- ### However, it also turns out that many shells cannot expand ${10} at all.
- ### So using an index variable doesn't work either. It is possible to use
- ### some shell magic to make 'set x "$arguments"; shift' work portably.
- while [ $# != 0 ]; do
- arg="$1"; shift
- case "${arg}" in
-
- ## Anything starting with a hyphen we assume is an option.
- -* )
- ## Separate the switch name from the value it's being given.
- case "${arg}" in
- -*=*)
- opt=`echo ${arg} | sed 's:^-*\([^=]*\)=.*$:\1:'`
- val=`echo ${arg} | sed 's:^-*[^=]*=\(.*\)$:\1:'`
- valomitted=no
- ;;
- -*)
- ## If FOO is a boolean argument, --FOO is equivalent to
- ## --FOO=yes. Otherwise, the value comes from the next
- ## argument - see below.
- opt=`echo ${arg} | sed 's:^-*\(.*\)$:\1:'`
- val="yes"
- valomitted=yes
- ;;
- esac
-
- ## Change `-' in the option name to `_'.
- optname="${opt}"
- opt="`echo ${opt} | tr - _`"
-
- ## Process the option.
- case "${opt}" in
-
- ## Has the user specified which window systems they want to support?
- "with_x" | "with_x11" | "with_x10" )
- ## Make sure the value given was either "yes" or "no".
- case "${val}" in
- y | ye | yes ) val=yes ;;
- n | no ) val=no ;;
- * )
- (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
- Set it to either \`yes' or \`no'."
- echo "${short_usage}") >&2
- exit 1
- ;;
- esac
- eval "${opt}=\"${val}\""
- ;;
-
- ## Has the user specified which toolkit they want to support?
- "with_x_toolkit" )
- case "${val}" in
- y | ye | yes ) val=athena ;;
- n | no ) val=no ;;
- l | lu | luc | luci | lucid ) val=lucid ;;
- a | at | ath | athe | athena ) val=athena ;;
- # These don't currently work.
- # m | mo | mot | moti | motif ) val=motif ;;
- # o | op | ope | open | open- | open-l | open-lo \
- # | open-loo | open-look ) val=open-look ;;
- * )
- (
- #echo "${progname}: the \`--${optname}' option is supposed to have a value
- #which is \`yes', \`no', \`lucid', \`athena', \`motif' or \`open-look'."
- echo "${progname}: the \`--${optname}' option is supposed to have a value
- which is \`yes', \`no', \`lucid', or \`athena'.
- Currently, \`yes', \`athena' and \`lucid' are synonyms."
- echo "${short_usage}") >&2
- exit 1
- ;;
- esac
- eval "${opt}=\"${val}\""
- ;;
-
- ## Has the user specified whether or not they want GCC?
- "with_gcc" | "with_gnu_cc" )
- ## Make sure the value given was either "yes" or "no".
- case "${val}" in
- y | ye | yes ) val=yes ;;
- n | no ) val=no ;;
- * )
- (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
- Set it to either \`yes' or \`no'."
- echo "${short_usage}") >&2
- exit 1
- ;;
- esac
- eval "${opt}=\"${val}\""
- ;;
-
- ## Has the user specified a source directory?
- "srcdir" )
- ## If the value was omitted, get it from the next argument.
- if [ "${valomitted}" = "yes" ]; then
- ## Get the next argument from the argument list, if there is one.
- if [ $# = 0 ]; then
- (echo "${progname}: You must give a value for the \`--${optname}' option, as in
- \`--${optname}=FOO'."
- echo "${short_usage}") >&2
- exit 1
- fi
- val="$1"; shift
- fi
- srcdir="${val}"
- ;;
-
- ## Has the user tried to tell us where the X files are?
- ## I think these are dopey, but no less than three alpha
- ## testers, at large sites, have said they have their X files
- ## installed in odd places.
- "x_includes" )
- ## If the value was omitted, get it from the next argument.
- if [ "${valomitted}" = "yes" ]; then
- ## Get the next argument from the argument list, if there is one.
- if [ $# = 0 ]; then
- (echo "${progname}: You must give a value for the \`--${optname}' option, as in
- \`--${optname}=/usr/local/X11/include'."
- echo "${short_usage}") >&2
- exit 1
- fi
- val="$1"; shift
- fi
- x_includes="${val}"
- ;;
- "x_libraries" )
- ## If the value was omitted, get it from the next argument.
- if [ "${valomitted}" = "yes" ]; then
- ## Get the next argument from the argument list, if there is one.
- if [ $# = 0 ]; then
- (echo "${progname}: You must give a value for the \`--${optname}' option, as in
- \`--${optname}=/usr/local/X11/lib'."
- echo "${short_usage}") >&2
- exit 1
- fi
- val="$1"; shift
- fi
- x_libraries="${val}"
- ;;
-
- ## Should this use the "development" file organization?
- "run_in_place" )
- single_tree=
- run_in_place=1
- ;;
-
- ## Should this use the "single tree" file organization?
- "single_tree" )
- run_in_place=
- single_tree=1
- ;;
-
- ## Has the user specified one of the path options?
- prefix | exec_prefix | bindir | libdir | etcdir | datadir | \
- archlibdir | statedir | mandir | infodir | lispdir | lockdir | \
- lisppath | locallisppath | docdir )
- ## If the value was omitted, get it from the next argument.
- if [ "${valomitted}" = "yes" ]; then
- if [ $# = 0 ]; then
- (echo \
- "$progname: You must give a value for the \`--${optname}' option,";
- echo \
- "as in \`--${optname}=`eval echo '$'$optname`.'"
- echo "$short_usage") >&2
- exit 1
- fi
- val="$1"; shift
- fi
- eval "${opt}=\"${val}\""
- eval "${opt}_specified=1"
- ;;
-
- ## Verbose flag, tested by autoconf macros.
- "verbose" )
- verbose=yes
- ;;
-
- ## Has the user asked for some help?
- "usage" | "help" )
- if [ "x$PAGER" = x ]
- then
- echo "${short_usage}" | more
- else
- echo "${short_usage}" | $PAGER
- fi
- exit
- ;;
-
- ## We ignore all other options silently.
- esac
- ;;
-
- ## Anything not starting with a hyphen we assume is a
- ## configuration name.
- *)
- configuration=${arg}
- ;;
-
- esac
- done
-
- ### Get the arguments back. See the diatribe on Shell Magic above.
- eval set x "$quoted_arguments"; shift
-
- if [ "${configuration}" = "" ]; then
- echo '- You did not tell me what kind of host system you want to configure.
- - I will attempt to guess the kind of system this is.' 1>&2
- guesssys=`echo ${progname} | sed 's/configure$/config.guess/'`
- if configuration=`${guesssys}` ; then
- echo "- Looks like this is a ${configuration}" 1>&2
- else
- echo '- Failed to guess the system type. You need to tell me.' 1>&2
- echo "${short_usage}" >&2
- exit 1
- fi
- fi
-
- #### Decide where the source is.
- case "${srcdir}" in
-
- ## If it's not specified, see if `.' or `..' might work.
- "" )
- confdir=`echo $0 | sed 's|//|/|' | sed 's|/[^/]*$||'`
- if [ -f $confdir/src/lisp.h -a -f $confdir/lisp/version.el ]; then
- srcdir="${confdir}"
- else
- if [ -f "./src/lisp.h" -a -f "./lisp/version.el" ]; then
- srcdir='.'
- else
- if [ -f "../src/lisp.h" -a -f "../lisp/version.el" ]; then
- srcdir='..'
- else
- (echo "\
- ${progname}: Neither the current directory nor its parent seem to
- contain the Emacs sources. If you do not want to build Emacs in its
- source tree, you should run \`${progname}' in the directory in which
- you wish to build Emacs, using its \`--srcdir' option to say where the
- sources may be found."
- echo "${short_usage}") >&2
- exit 1
- fi
- fi
- fi
- ;;
-
- ## Otherwise, check if the directory they specified is okay.
- * )
- if [ ! -d "${srcdir}" -o ! -f "${srcdir}/src/lisp.h" -o ! -f "${srcdir}/lisp/version.el" ]; then
- (echo "\
- ${progname}: The directory specified with the \`--srcdir' option,
- \`${srcdir}', doesn't seem to contain the Emacs sources. You should
- either run the \`${progname}' script at the top of the Emacs source
- tree, or use the \`--srcdir' option to specify where the Emacs sources
- are."
- echo "${short_usage}") >&2
- exit 1
- fi
- ;;
- esac
-
- #### Make srcdir absolute, if it isn't already. It's important to
- #### avoid running the path through pwd unnecessary, since pwd can
- #### give you automounter prefixes, which can go away.
- case "${srcdir}" in
- /* ) ;;
- . )
- ## We may be able to use the $PWD environment variable to make this
- ## absolute. But sometimes PWD is inaccurate.
- if [ "${PWD}" != "" ] && [ "`(cd ${PWD} ; sh -c pwd)`" = "`pwd`" ] ; then
- srcdir="$PWD"
- else
- srcdir="`(cd ${srcdir}; pwd)`"
- fi
- ;;
- * ) srcdir="`(cd ${srcdir}; pwd)`" ;;
- esac
-
- #### Check if the source directory already has a configured system in it.
- if [ `pwd` != `(cd ${srcdir} && pwd)` ] \
- && [ -f "${srcdir}/src/config.h" ] ; then
- (echo "${progname}: WARNING: The directory tree \`${srcdir}' is being used"
- echo " as a build directory right now; it has been configured in its own"
- echo " right. To configure in another directory as well, you MUST"
- echo " use GNU make. If you do not have GNU make, then you must"
- echo " now do \`make distclean' in ${srcdir},"
- echo " and then run ${progname} again.") >&2
- extrasub='/^VPATH[ ]*=/c\
- vpath %.c $(srcdir)\
- vpath %.h $(srcdir)\
- vpath %.y $(srcdir)\
- vpath %.l $(srcdir)\
- vpath %.s $(srcdir)\
- vpath %.in $(srcdir)'
- fi
-
- ### Make the necessary directories, if they don't exist.
- for dir in ./src ./lib-src ./cpp ./oldXMenu ./lwlib ./etc ; do
- if [ ! -d ${dir} ]; then
- mkdir ${dir}
- fi
- done
-
- #### Given the configuration name, set machfile and opsysfile to the
- #### names of the m/*.h and s/*.h files we should use.
-
- ### Canonicalize the configuration name.
- echo "Checking the configuration name"
- if canonical=`${srcdir}/config.sub "${configuration}"` ; then : ; else
- exit $?
- fi
-
- ### If you add support for a new configuration, add code to this
- ### switch statement to recognize your configuration name and select
- ### the appropriate operating system and machine description files.
-
- ### You would hope that you could choose an m/*.h file pretty much
- ### based on the machine portion of the configuration name, and an s-
- ### file based on the operating system portion. However, it turns out
- ### that each m/*.h file is pretty manufacturer-specific - for
- ### example, apollo.h, hp9000s300.h, mega68k, news.h, and tad68k are
- ### all 68000 machines; mips.h, pmax.h, and news-risc are all MIPS
- ### machines. So we basically have to have a special case for each
- ### configuration name.
- ###
- ### As far as handling version numbers on operating systems is
- ### concerned, make sure things will fail in a fixable way. If
- ### /etc/MACHINES doesn't say anything about version numbers, be
- ### prepared to handle anything reasonably. If version numbers
- ### matter, be sure /etc/MACHINES says something about it.
- ###
- ### Eric Raymond says we should accept strings like "sysvr4" to mean
- ### "System V Release 4"; he writes, "The old convention encouraged
- ### confusion between `system' and `release' levels'."
-
- machine='' opsys='' unported='false'
- case "${canonical}" in
-
- ## NetBSD ports
- *-*-netbsd* )
- opsys=netbsd
- case "${canonical}" in
- i[345]86-*-netbsd*) machine=intel386 ;;
- m68k-*-netbsd*)
- # This is somewhat bogus.
- machine=hp9000s300 ;;
- mips-*-netbsd*) machine=pmax ;;
- ns32k-*-netbsd*) machine=ns32000 ;;
- sparc-*-netbsd*) machine=sparc ;;
- esac
- ;;
-
- ## Alliant machines
- ## Strictly speaking, we need the version of the alliant operating
- ## system to choose the right machine file, but currently the
- ## configuration name doesn't tell us enough to choose the right
- ## one; we need to give alliants their own operating system name to
- ## do this right. When someone cares, they can help us.
- fx80-alliant-* )
- machine=alliant4 opsys=bsd4-2
- ;;
- i860-alliant-* )
- machine=alliant-2800 opsys=bsd4-3
- ;;
-
- ## Altos 3068
- m68*-altos-sysv* )
- machine=altos opsys=usg5-2
- ;;
-
- ## Amdahl UTS
- 580-amdahl-sysv* )
- machine=amdahl opsys=usg5-2-2
- ;;
-
- ## Appallings - I mean, Apollos - running Domain
- m68*-apollo* )
- machine=apollo opsys=bsd4-2
- ;;
-
- ## AT&T 3b2, 3b5, 3b15, 3b20
- we32k-att-sysv* )
- machine=att3b opsys=usg5-2-2
- ;;
-
- ## AT&T 3b1 - The Mighty Unix PC!
- m68*-att-sysv* )
- machine=7300 opsys=usg5-2-2
- ;;
-
- ## Bull dpx20
- rs6000-bull-bosx* )
- machine=ibmrs6000 opsys=aix3-2
- ;;
-
- ## Bull dpx2
- m68*-bull-sysv3* )
- machine=dpx2 opsys=usg5-3
- ;;
-
- ## Bull sps7
- m68*-bull-sysv2* )
- machine=sps7 opsys=usg5-2
- ;;
-
- ## CCI 5/32, 6/32 -- see "Tahoe".
-
- ## Celerity
- ## I don't know what configuration name to use for this; config.sub
- ## doesn't seem to know anything about it. Hey, Celerity users, get
- ## in touch with us!
- celerity-celerity-bsd* )
- machine=celerity opsys=bsd4-2
- ;;
-
- ## Clipper
- ## What operating systems does this chip run that Emacs has been
- ## tested on?
- clipper-* )
- machine=clipper
- ## We'll use the catch-all code at the bottom to guess the
- ## operating system.
- ;;
-
- ## Convex
- *-convex-bsd* | *-convex-convexos* )
- machine=convex opsys=bsd4-3
- ## Prevents suprious white space in makefiles - d.m.cooke@larc.nasa.gov
- NON_GNU_CPP="cc -E -P"
- ;;
-
- ## Cubix QBx/386
- i[345]86-cubix-sysv* )
- machine=intel386 opsys=usg5-3
- ;;
-
- ## Cydra 5
- cydra*-cydrome-sysv* )
- machine=cydra5 opsys=usg5-3
- ;;
-
- ## Data General AViiON Machines
- m88k-dg-dgux5.4R3* | m88k-dg-dgux5.4.3* )
- machine=aviion opsys=dgux5-4r3
- ;;
- m88k-dg-dgux5.4R2* | m88k-dg-dgux5.4.2* )
- machine=aviion opsys=dgux5-4r2
- ;;
- m88k-dg-dgux* )
- machine=aviion opsys=dgux
- ;;
-
- ## DECstations
- mips-dec-ultrix[0-3].* | mips-dec-ultrix4.0* | mips-dec-bsd4.2* )
- machine=pmax opsys=bsd4-2
- ;;
- mips-dec-ultrix* | mips-dec-bsd* )
- machine=pmax opsys=bsd4-3
- ;;
- mips-dec-osf* )
- machine=pmax opsys=osf1
- ;;
-
- ## Motorola Delta machines
- m68k-motorola-sysv* | m68000-motorola-sysv* )
- machine=delta opsys=usg5-3
- if [ -z "`type gnucc | grep 'not found'`" ]
- then CC=gnucc
- else
- if [ -z "`type gcc | grep 'not found'`" ]
- then CC=gcc
- else CC=cc
- fi
- fi
- ;;
- m88k-motorola-sysv4* )
- machine=delta88k opsys=usg5-4
- ;;
- m88k-motorola-sysv* | m88k-motorola-m88kbcs* )
- machine=delta88k opsys=usg5-3
- ;;
-
- ## Dual machines
- m68*-dual-sysv* )
- machine=dual opsys=usg5-2
- ;;
- m68*-dual-uniplus* )
- machine=dual opsys=unipl5-2
- ;;
-
- ## Elxsi 6400
- elxsi-elxsi-sysv* )
- machine=elxsi opsys=usg5-2
- ;;
-
- ## Encore machines
- ns16k-encore-bsd* )
- machine=ns16000 opsys=umax
- ;;
-
- ## The GEC 93 - apparently, this port isn't really finished yet.
-
- ## Gould Power Node and NP1
- pn-gould-bsd4.2* )
- machine=gould opsys=bsd4-2
- ;;
- pn-gould-bsd4.3* )
- machine=gould opsys=bsd4-3
- ;;
- np1-gould-bsd* )
- machine=gould-np1 opsys=bsd4-3
- ;;
-
- ## Harris Night Hawk machines running CX/UX (a 5000 looks just like a 4000
- ## as far as Emacs is concerned).
- m88k-harris-cxux* )
- # Build needs to be different on 7.0 and later releases
- case "`uname -r`" in
- [56].[0-9] ) machine=nh4000 opsys=cxux ;;
- [7].[0-9] ) machine=nh4000 opsys=cxux7 ;;
- esac
- ;;
- ## Harris ecx or gcx running CX/UX (Series 1200, Series 3000)
- m68k-harris-cxux* )
- machine=nh3000 opsys=cxux
- ;;
-
- ## Honeywell XPS100
- xps*-honeywell-sysv* )
- machine=xps100 opsys=usg5-2
- ;;
-
- ## HP 9000 series 200 or 300
- m68*-hp-bsd* )
- machine=hp9000s300 opsys=bsd4-3
- ;;
- ## HP/UX 7, 8 and 9 are supported on these machines.
- m68*-hp-hpux* )
- case "`uname -r`" in
- ## Someone's system reports A.B8.05 for this.
- ## I wonder what other possibilities there are.
- *.B8.* ) machine=hp9000s300 opsys=hpux8 ;;
- *.08.* ) machine=hp9000s300 opsys=hpux8 ;;
- *.09.* ) machine=hp9000s300 opsys=hpux9 ;;
- *) machine=hp9000s300 opsys=hpux ;;
- esac
- ;;
-
- ## HP 9000 series 700 and 800, running HP/UX
- hppa*-hp-hpux7* )
- machine=hp800 opsys=hpux
- ;;
- hppa*-hp-hpux8* )
- machine=hp800 opsys=hpux8
- ;;
- hppa*-hp-hpux9shr* )
- machine=hp800 opsys=hpux9shr
- ;;
- hppa*-hp-hpux9* )
- machine=hp800 opsys=hpux9
- ;;
-
- ## HP 9000 series 700 and 800, running HP/UX
- hppa*-hp-hpux* )
- ## Cross-compilation? Nah!
- case "`uname -r`" in
- ## Someone's system reports A.B8.05 for this.
- ## I wonder what other possibilities there are.
- *.B8.* ) machine=hp800 opsys=hpux8 ;;
- *.08.* ) machine=hp800 opsys=hpux8 ;;
- *.09.* ) machine=hp800 opsys=hpux9 ;;
- *) machine=hp800 opsys=hpux ;;
- esac
- ;;
-
- ## Orion machines
- orion-orion-bsd* )
- machine=orion opsys=bsd4-2
- ;;
- clipper-orion-bsd* )
- machine=orion105 opsys=bsd4-2
- ;;
-
- ## IBM machines
- i[345]86-ibm-aix1.1* )
- machine=ibmps2-aix opsys=usg5-2-2
- ;;
- i[345]86-ibm-aix1.[23]* | i[345]86-ibm-aix* )
- machine=ibmps2-aix opsys=usg5-3
- ;;
- i370-ibm-aix*)
- machine=ibm370aix opsys=usg5-3
- ;;
- rs6000-ibm-aix3.1* | powerpc-ibm-aix3.1* )
- machine=ibmrs6000 opsys=aix3-1
- ;;
- rs6000-ibm-aix3.2.5 | powerpc-ibm-aix3.2.5 )
- machine=ibmrs6000 opsys=aix3-2-5
- ;;
- rs6000-ibm-aix* | powerpc-ibm-aix* )
- machine=ibmrs6000 opsys=aix3-2
- ;;
- romp-ibm-bsd4.3* )
- machine=ibmrt opsys=bsd4-3
- ;;
- romp-ibm-bsd4.2* )
- machine=ibmrt opsys=bsd4-2
- ;;
- romp-ibm-aos4.3* )
- machine=ibmrt opsys=bsd4-3
- ;;
- romp-ibm-aos4.2* )
- machine=ibmrt opsys=bsd4-2
- ;;
- romp-ibm-aos* )
- machine=ibmrt opsys=bsd4-3
- ;;
- romp-ibm-bsd* )
- machine=ibmrt opsys=bsd4-3
- ;;
- romp-ibm-aix* )
- machine=ibmrt-aix opsys=usg5-2-2
- ;;
-
- ## Integrated Solutions `Optimum V'
- m68*-isi-bsd4.2* )
- machine=isi-ov opsys=bsd4-2
- ;;
- m68*-isi-bsd4.3* )
- machine=isi-ov opsys=bsd4-3
- ;;
-
- ## Intel 386 machines where we do care about the manufacturer
- i[345]86-intsys-sysv* )
- machine=is386 opsys=usg5-2-2
- ;;
-
- ## Prime EXL
- i[345]86-prime-sysv* )
- machine=i386 opsys=usg5-3
- ;;
-
- ## Sequent Symmetry
- i[345]86-sequent-bsd* )
- machine=symmetry opsys=bsd4-3
- ;;
-
- ## Unspecified sysv on an ncr machine defaults to svr4.2.
- ## (Plain usg5-4 doesn't turn on POSIX signals, which we need.)
- i[345]86-ncr-sysv* )
- machine=intel386 opsys=usg5-4-2
- ;;
-
- ## Intel 860
- i860-*-sysv4* )
- machine=i860 opsys=usg5-4
- NON_GNU_CC="/bin/cc" # Ie, not the one in /usr/ucb/cc.
- NON_GNU_CPP="/usr/ccs/lib/cpp" # cc -E tokenizes macro expansion.
- ;;
-
- ## Masscomp machines
- m68*-masscomp-rtu* )
- machine=masscomp opsys=rtu
- ;;
-
- ## Megatest machines
- m68*-megatest-bsd* )
- machine=mega68 opsys=bsd4-2
- ;;
-
- ## Workstations sold by MIPS
- ## This is not necessarily all workstations using the MIPS processor -
- ## Irises are produced by SGI, and DECstations by DEC.
-
- ## etc/MACHINES lists mips.h and mips4.h as possible machine files,
- ## and usg5-2-2 and bsd4-3 as possible OS files. The only guidance
- ## it gives for choosing between the alternatives seems to be "Use
- ## -machine=mips4 for RISCOS version 4; use -opsystem=bsd4-3 with
- ## the BSD world." I'll assume that these are instructions for
- ## handling two odd situations, and that every other situation
- ## should use mips.h and usg5-2-2, they being listed first.
- mips-mips-usg* )
- machine=mips4
- ## Fall through to the general code at the bottom to decide on the OS.
- ;;
- mips-mips-riscos4* )
- machine=mips4 opsys=bsd4-3
- NON_GNU_CC="cc -systype bsd43"
- NON_GNU_CPP="cc -systype bsd43 -E"
- ;;
- mips-mips-bsd* )
- machine=mips opsys=bsd4-3
- ;;
- mips-mips-* )
- machine=mips opsys=usg5-2-2
- ;;
-
- ## NeXT
- m68*-next-* | i[345]86-next-* )
- machine=next opsys=mach2
- ;;
-
- ## The complete machine from National Semiconductor
- ns32k-ns-genix* )
- machine=ns32000 opsys=usg5-2
- ;;
-
- ## NCR machines
- m68*-ncr-sysv2* | m68*-ncr-sysvr2* )
- machine=tower32 opsys=usg5-2-2
- ;;
- m68*-ncr-sysv3* | m68*-ncr-sysvr3* )
- machine=tower32v3 opsys=usg5-3
- ;;
-
- ## Nixdorf Targon 31
- m68*-nixdorf-sysv* )
- machine=targon31 opsys=usg5-2-2
- ;;
-
- ## Nu (TI or LMI)
- m68*-nu-sysv* )
- machine=nu opsys=usg5-2
- ;;
-
- ## Plexus
- m68*-plexus-sysv* )
- machine=plexus opsys=usg5-2
- ;;
-
- ## Pyramid machines
- ## I don't really have any idea what sort of processor the Pyramid has,
- ## so I'm assuming it is its own architecture.
- pyramid-pyramid-bsd* )
- machine=pyramid opsys=bsd4-2
- ;;
-
- ## Sequent Balance
- ns32k-sequent-bsd4.2* )
- machine=sequent opsys=bsd4-2
- ;;
- ns32k-sequent-bsd4.3* )
- machine=sequent opsys=bsd4-3
- ;;
-
- ## Siemens Nixdorf
- mips-siemens-sysv* )
- machine=mips-siemens opsys=usg5-4
- NON_GNU_CC=/usr/ccs/bin/cc
- NON_GNU_CPP=/usr/ccs/lib/cpp
- ;;
-
- ## Silicon Graphics machines
- ## Iris 2500 and Iris 2500 Turbo (aka the Iris 3030)
- m68*-sgi-iris3.5* )
- machine=irist opsys=iris3-5
- ;;
- m68*-sgi-iris3.6* | m68*-sgi-iris*)
- machine=irist opsys=iris3-6
- ;;
- ## Iris 4D
- mips-sgi-irix3* )
- machine=iris4d opsys=irix3-3
- ;;
- mips-sgi-irix5* )
- machine=iris4d opsys=irix5-0
- ;;
- mips-sgi-irix4* | mips-sgi-irix* )
- machine=iris4d opsys=irix4-0
- ;;
-
- ## SONY machines
- m68*-sony-bsd4.2* )
- machine=news opsys=bsd4-2
- ;;
- m68*-sony-bsd4.3* )
- machine=news opsys=bsd4-3
- ;;
- m68*-sony-newsos3*)
- machine=news opsys=bsd4-3
- ;;
- mips-sony-bsd* | mips-sony-newsos4* )
- machine=news-risc opsys=bsd4-3
- ;;
- mips-sony-newsos* )
- machine=news-risc opsys=newsos5
- ;;
-
- ## Stride
- m68*-stride-sysv* )
- machine=stride opsys=usg5-2
- ;;
-
- ## Suns
- *-sun-sunos* | *-sun-bsd* | *-sun-solaris* | i[345]86-*-solaris2* | i[345]86-*-sunos5* )
- case "${canonical}" in
- m68*-sunos1* ) machine=sun1 ;;
- m68*-sunos2* ) machine=sun2 ;;
- m68* ) machine=sun3 ;;
- i[345]86-sun-sunos[34]* ) machine=sun386 ;;
- i[345]86-*-* ) machine=intel386 ;;
- sparc* ) machine=sparc ;;
- * ) unported=true ;;
- esac
- case "${canonical}" in
- ## The Sun386 didn't get past 4.0.
- i[345]86-*-sunos4 ) opsys=sunos4-0 ;;
- *-sunos4.0* ) opsys=sunos4-0 ;;
- *-sunos4.1.3* ) opsys=sunos4-1-3
- NON_GCC_TEST_OPTIONS=-Bstatic
- GCC_TEST_OPTIONS=-static
- ;;
- *-sunos4shr* ) opsys=sunos4shr ;;
- *-sunos4* | *-sunos ) opsys=sunos4-1
- NON_GCC_TEST_OPTIONS=-Bstatic
- GCC_TEST_OPTIONS=-static
- ;;
- *-sunos5.3* | *-solaris2.3* )
- opsys=sol2-3
- NON_GNU_CPP=/usr/ccs/lib/cpp
- ;;
- *-sunos5.4* | *-solaris2.4* )
- opsys=sol2-4
- NON_GNU_CPP=/usr/ccs/lib/cpp
- ;;
- *-sunos5* | *-solaris* )
- opsys=sol2
- NON_GNU_CPP=/usr/ccs/lib/cpp
- ;;
- * ) opsys=bsd4-2 ;;
- esac
- ;;
-
- ## Tadpole 68k
- m68*-tadpole-sysv* )
- machine=tad68k opsys=usg5-3
- ;;
-
- ## Tahoe machines
- tahoe-tahoe-bsd4.2* )
- machine=tahoe opsys=bsd4-2
- ;;
- tahoe-tahoe-bsd4.3* )
- machine=tahoe opsys=bsd4-3
- ;;
-
- ## Tandem Integrity S2
- mips-tandem-sysv* )
- machine=tandem-s2 opsys=usg5-3
- ;;
-
- ## Tektronix XD88
- m88k-tektronix-sysv3* )
- machine=tekxd88 opsys=usg5-3
- ;;
-
- ## Tektronix 16000 box (6130?)
- ns16k-tektronix-bsd* )
- machine=ns16000 opsys=bsd4-2
- ;;
- ## Tektronix 4300
- ## src/m/tek4300.h hints that this is a m68k machine.
- m68*-tektronix-bsd* )
- machine=tek4300 opsys=bsd4-3
- ;;
-
- ## Titan P2 or P3
- ## We seem to have lost the machine-description file titan.h!
- titan-titan-sysv* )
- machine=titan opsys=usg5-3
- ;;
-
- ## Ustation E30 (SS5E)
- m68*-unisys-uniplus* )
- machine=ustation opsystem=unipl5-2
- ;;
-
- ## Vaxen.
- vax-dec-* )
- machine=vax
- case "${canonical}" in
- *-bsd4.1* ) opsys=bsd4-1 ;;
- *-bsd4.2* | *-ultrix[0-3].* | *-ultrix4.0* ) opsys=bsd4-2 ;;
- *-bsd4.3* | *-ultrix* ) opsys=bsd4-3 ;;
- *-bsd386* | *-bsdi* ) opsys=bsd386 ;;
- *-sysv[01]* | *-sysvr[01]* ) opsys=usg5-0 ;;
- *-sysv2* | *-sysvr2* ) opsys=usg5-2 ;;
- *-vms* ) opsys=vms ;;
- * ) unported=true
- esac
- ;;
-
- ## Whitechapel MG1
- ns16k-whitechapel-* )
- machine=mg1
- ## We don't know what sort of OS runs on these; we'll let the
- ## operating system guessing code below try.
- ;;
-
- ## Wicat
- m68*-wicat-sysv* )
- machine=wicat opsys=usg5-2
- ;;
-
- ## Intel 386 machines where we don't care about the manufacturer
- i[345]86-*-* )
- machine=intel386
- case "${canonical}" in
- *-isc1.* | *-isc2.[01]* ) opsys=386-ix ;;
- *-isc2.2* ) opsys=isc2-2 ;;
- *-isc4.0* ) opsys=isc4-0 ;;
- *-isc* ) opsys=isc3-0 ;;
- *-esix5* ) opsys=esix5r4; NON_GNU_CPP=/usr/lib/cpp ;;
- *-esix* ) opsys=esix ;;
- *-xenix* ) opsys=xenix ;;
- *-linux* ) opsys=linux ;;
- *-sco3.2v4* ) opsys=sco4 ; NON_GNU_CPP=/lib/cpp ;;
- *-bsd386* | *-bsdi* ) opsys=bsd386 ;;
- *-386bsd* ) opsys=386bsd ;;
- *-freebsd* ) opsys=freebsd ;;
- *-nextstep* ) opsys=mach2 ;;
- ## Otherwise, we'll fall through to the generic opsys code at the bottom.
- esac
- ;;
-
- * )
- unported=true
- ;;
- esac
-
- ### If the code above didn't choose an operating system, just choose
- ### an operating system based on the configuration name. You really
- ### only want to use this when you have no idea what the right
- ### operating system is; if you know what operating systems a machine
- ### runs, it's cleaner to make it explicit in the case statement
- ### above.
- if [ x"${opsys}" = x ]; then
- case "${canonical}" in
- *-gnu* ) opsys=gnu ;;
- *-bsd4.[01] ) opsys=bsd4-1 ;;
- *-bsd4.2 ) opsys=bsd4-2 ;;
- *-bsd4.3 ) opsys=bsd4-3 ;;
- *-sysv0 | *-sysvr0 ) opsys=usg5-0 ;;
- *-sysv2 | *-sysvr2 ) opsys=usg5-2 ;;
- *-sysv2.2 | *-sysvr2.2 ) opsys=usg5-2-2 ;;
- *-sysv3 | *-sysvr3 ) opsys=usg5-3 ;;
- *-sysv4 | *-sysvr4 ) opsys=usg5-4 ;;
- *-sysv4.1 | *-sysvr4.1 )
- NON_GNU_CPP=/usr/lib/cpp
- opsys=usg5-4 ;;
- *-sysv4.2 | *-sysvr4.2 ) opsys=usg5-4-2 ;;
- * )
- unported=true
- ;;
- esac
- fi
-
- if $unported ; then
- (echo "${progname}: Emacs hasn't been ported to \`${canonical}' systems."
- echo "${progname}: Check \`etc/MACHINES' for recognized configuration names."
- ) >&2
- exit 1
- fi
-
- machfile="m/${machine}.h"
- opsysfile="s/${opsys}.h"
-
- ]
- AC_PREPARE(lisp)
- AC_CONFIG_HEADER(src/config.h)
- [
-
- #### Choose a compiler.
- if [ "x$CC" = x ]
- then true
- else cc_specified=1
- fi
-
- case ${with_gcc} in
- "yes" ) CC="gcc" GCC=1 ;;
- "no" )
- if [ "x$CC" = x ]
- then CC=cc;
- else true;
- fi
- ;;
- * )
- ] AC_PROG_CC [
- esac
-
- #### Some systems specify a CPP to use unless we are using GCC.
- #### Now that we know whether we are using GCC, we can decide whether
- #### to use that one.
- if [ "x$NON_GNU_CPP" = x ] || [ x$GCC = x1 ] || [ "x$CPP" != x ]
- then true
- else
- CPP="$NON_GNU_CPP"
- fi
-
- #### Some systems specify a CC to use unless we are using GCC.
- #### Now that we know whether we are using GCC, we can decide whether
- #### to use that one.
- if [ "x$NON_GNU_CC" = x ] || [ x$GCC = x1 ] || [ x$cc_specified = x1 ]
- then true
- else
- CC="$NON_GNU_CC"
- fi
-
- if [ x$GCC = x1 ] && [ "x$GCC_TEST_OPTIONS" != x ]
- then
- CC="$CC $GCC_TEST_OPTIONS"
- fi
-
- if [ x$GCC = x ] && [ "x$NON_GCC_TEST_OPTIONS" != x ]
- then
- CC="$CC $NON_GCC_TEST_OPTIONS"
- fi
-
- #### Some other nice autoconf tests. If you add a test here which
- #### should make an entry in src/config.h, don't forget to add an
- #### #undef clause to src/config.h.in for autoconf to modify.
- ]
- dnl checks for programs
- AC_LN_S
- AC_PROG_CPP
- AC_PROG_INSTALL
- AC_PROG_YACC
-
- dnl checks for UNIX variants that set `DEFS'
-
- dnl checks for header files
- AC_HAVE_HEADERS(sys/timeb.h sys/time.h unistd.h)
- AC_STDC_HEADERS
- AC_TIME_WITH_SYS_TIME
- dnl In Autoconf 1.8 use AC_SYS_SIGLIST_DECLARED instead of this.
- AC_COMPILE_CHECK(sys_siglist declaration in signal.h or unistd.h,
- [#include <signal.h>
- /* NetBSD declares sys_siglist in <unistd.h>. */
- #ifdef HAVE_UNISTD_H
- #include <unistd.h>
- #endif], [char *msg = *(sys_siglist + 1);],
- AC_DEFINE(SYS_SIGLIST_DECLARED))
-
- dnl checks for typedefs
- AC_RETSIGTYPE
-
- dnl checks for structure members
- AC_STRUCT_TM
- AC_TIMEZONE
-
- dnl checks for compiler characteristics
- AC_CONST
-
- dnl check for Make feature
- AC_SET_MAKE
-
- dnl checks for operating system services
- AC_LONG_FILE_NAMES
-
- dnl other checks for UNIX variants
- [
-
- #### Choose a window system.
- echo "checking for specified window system"
-
- window_system=''
- case "${with_x}" in
- yes )
- window_system=${window_system}x11
- ;;
- no )
- window_system=${window_system}none
- ;;
- esac
- case "${window_system}" in
- .* )
- ;;
- * )
- case "${with_x11}" in
- yes )
- window_system=x11
- ;;
- no )
- window_system=none
- ;;
- esac
- case "${with_x10}" in
- yes )
- window_system=x10
- ;;
- no )
- window_system=none
- ;;
- esac
- ;;
- esac
-
- case "${window_system}" in
- "none" | "x11" | "x10" ) ;;
- "" )
- # --x-includes or --x-libraries implies --with-x11.
- if [ -n "${x_includes}" ] || [ -n "${x_libraries}" ]; then
- window_system=x11
- else
- echo " No window system specified. Looking for X11."
- # If the user didn't specify a window system and we found X11, use it.
- if [ -r /usr/lib/libX11.a \
- -o -d /usr/include/X11 \
- -o -d /usr/X386/include \
- -o -d ${x_includes}/X11 ]; then
- window_system=x11
- fi
- fi
- ;;
- * )
- echo "Don't specify a window system more than once." >&2
- exit 1
- ;;
- esac
-
- case "${window_system}" in
- "" | "x11" )
- ### If the user hasn't specified where we should find X, try
- ### letting autoconf figure that out.
- if [ -z "${x_includes}" ] && [ -z "${x_libraries}" ]; then
- ]
- AC_FIND_X
- [
- fi
- if [ -n "${x_includes}" ] || [ -n "${x_libraries}" ]; then
- window_system=x11
- fi
- ;;
- esac
-
- [ -z "${window_system}" ] && window_system=none
-
- [ -n "${x_libraries}" ] && LD_SWITCH_X_SITE="-L${x_libraries}"
- [ -n "${x_libraries}" ] && LD_SWITCH_X_SITE_AUX="-R${x_libraries}"
- [ -n "${x_includes}" ] && C_SWITCH_X_SITE="-I${x_includes}"
-
- # Avoid forcing the search of /usr/include before fixed include files.
- if [ "$C_SWITCH_X_SITE" = "-I/usr/include" ]; then
- C_SWITCH_X_SITE=" "
- fi
-
- case "${window_system}" in
- x11 )
- HAVE_X_WINDOWS=yes
- HAVE_X11=yes
- echo " Using X11."
- case "${with_x_toolkit}" in
- athena | lucid )
- USE_X_TOOLKIT=LUCID
- echo " Using Xt toolkit."
- ;;
- motif )
- USE_X_TOOLKIT=MOTIF
- echo " Using Motif toolkit."
- ;;
- open-look )
- USE_X_TOOLKIT=OPEN_LOOK
- echo " Using Open-Look toolkit."
- ;;
- * )
- USE_X_TOOLKIT=none
- echo " Using Xlib directly."
- ;;
- esac
- ;;
- x10 )
- HAVE_X_WINDOWS=yes
- HAVE_X11=no
- USE_X_TOOLKIT=none
- echo " Using X10."
- ;;
- none )
- HAVE_X_WINDOWS=no
- HAVE_X11=no
- USE_X_TOOLKIT=none
- echo " Using no window system."
- ;;
- esac
- X_TOOLKIT_TYPE=$USE_X_TOOLKIT
-
- ### If we're using X11, we should use the X menu package.
- HAVE_X_MENU=no
- case ${HAVE_X11} in
- yes )
- HAVE_X_MENU=yes
- ;;
- esac
-
- #### Extract some information from the operating system and machine files.
-
- echo "examining the machine- and system-dependent files to find out"
- echo " - which libraries the lib-src programs will want, and"
- echo " - whether the GNU malloc routines are usable"
-
- ### First figure out CFLAGS (which we use for running the compiler here)
- ### and REAL_CFLAGS (which we use for real compilation).
- ### The two are the same except on a few systems, where they are made
- ### different to work around various lossages. For example,
- ### GCC 2.5 on Linux needs them to be different because it treats -g
- ### as implying static linking.
-
- ### If the CFLAGS env var is specified, we use that value
- ### instead of the default.
-
- ### It's not important that this name contain the PID; you can't run
- ### two configures in the same directory and have anything work
- ### anyway.
- tempcname="conftest.c"
-
- echo '
- #include "'${srcdir}'/src/'${opsysfile}'"
- #include "'${srcdir}'/src/'${machfile}'"
- #ifndef LIBS_MACHINE
- #define LIBS_MACHINE
- #endif
- #ifndef LIBS_SYSTEM
- #define LIBS_SYSTEM
- #endif
- #ifndef C_SWITCH_SYSTEM
- #define C_SWITCH_SYSTEM
- #endif
- #ifndef C_SWITCH_MACHINE
- #define C_SWITCH_MACHINE
- #endif
- configure___ libsrc_libs=LIBS_MACHINE LIBS_SYSTEM
- configure___ c_switch_system=C_SWITCH_SYSTEM
- configure___ c_switch_machine=C_SWITCH_MACHINE
-
- #ifndef LIB_X11_LIB
- #define LIB_X11_LIB -lX11
- #endif
-
- #ifndef LIBX11_MACHINE
- #define LIBX11_MACHINE
- #endif
-
- #ifndef LIBX11_SYSTEM
- #define LIBX11_SYSTEM
- #endif
- configure___ LIBX=LIB_X11_LIB LIBX11_MACHINE LIBX11_SYSTEM
-
- #ifdef UNEXEC
- configure___ unexec=UNEXEC
- #else
- configure___ unexec=unexec.o
- #endif
-
- #ifdef SYSTEM_MALLOC
- configure___ system_malloc=yes
- #else
- configure___ system_malloc=no
- #endif
-
- #ifndef C_DEBUG_SWITCH
- #define C_DEBUG_SWITCH -g
- #endif
-
- #ifndef C_OPTIMIZE_SWITCH
- #define C_OPTIMIZE_SWITCH -O
- #endif
-
- #ifdef THIS_IS_CONFIGURE
-
- /* Get the CFLAGS for tests in configure. */
- #ifdef __GNUC__
- configure___ CFLAGS=C_DEBUG_SWITCH C_OPTIMIZE_SWITCH '${CFLAGS}'
- #else
- configure___ CFLAGS=C_DEBUG_SWITCH '${CFLAGS}'
- #endif
-
- #else /* not THIS_IS_CONFIGURE */
-
- /* Get the CFLAGS for real compilation. */
- #ifdef __GNUC__
- configure___ REAL_CFLAGS=C_DEBUG_SWITCH C_OPTIMIZE_SWITCH '${CFLAGS}'
- #else
- configure___ REAL_CFLAGS=C_DEBUG_SWITCH '${CFLAGS}'
- #endif
-
- #endif /* not THIS_IS_CONFIGURE */
- ' > ${tempcname}
- # The value of CPP is a quoted variable reference, so we need to do this
- # to get its actual value...
- CPP=`eval "echo $CPP"`
- eval `${CPP} -Isrc ${tempcname} \
- | grep 'configure___' \
- | sed -e 's/^configure___ \([^=]*=\)\(.*\)$/\1"\2"/'`
- if [ "x$CFLAGS" = x ]; then
- eval `${CPP} -Isrc -DTHIS_IS_CONFIGURE ${tempcname} \
- | grep 'configure___' \
- | sed -e 's/^configure___ \([^=]*=\)\(.*\)$/\1"\2"/'`
- else
- REAL_CFLAGS="$CFLAGS"
- fi
- rm ${tempcname}
-
- ### Compute the unexec source name from the object name.
- UNEXEC_SRC="`echo ${unexec} | sed 's/\.o/.c/'`"
-
- # Do the opsystem or machine files prohibit the use of the GNU malloc?
- # Assume not, until told otherwise.
- GNU_MALLOC=yes
- if [ "${system_malloc}" = "yes" ]; then
- GNU_MALLOC=no
- GNU_MALLOC_reason="
- (The GNU allocators don't work with this system configuration.)"
- fi
-
- if [ x"${REL_ALLOC}" = x ]; then
- REL_ALLOC=${GNU_MALLOC}
- fi
-
- LISP_FLOAT_TYPE=yes
-
-
- #### Add the libraries to LIBS and check for some functions.
-
- ]
- DEFS="$c_switch_system $c_switch_machine $DEFS"
- LIBS="$libsrc_libs"
-
- dnl If found, this defines HAVE_LIBDNET, which m/pmax.h checks,
- dnl and also adds -ldnet to LIBS, which Autoconf uses for checks.
- AC_HAVE_LIBRARY(-ldnet)
- dnl This causes -lresolv to get used in subsequent tests,
- dnl which causes failures on some systems such as HPUX 9.
- dnl AC_HAVE_LIBRARY(-lresolv)
-
- AC_HAVE_LIBRARY(-lXbsd, LD_SWITCH_X_SITE="$LD_SWITCH_X_SITE -lXbsd")
-
- echo checking for XFree86
- if test -d /usr/X386/include; then
- HAVE_XFREE386=yes
- test -z "${C_SWITCH_X_SITE}" && C_SWITCH_X_SITE="-I/usr/X386/include"
- fi
-
- # We change CFLAGS temporarily so that C_SWITCH_X_SITE gets used
- # for the tests that follow.
-
- if test "${HAVE_X11}" = "yes"; then
- DEFS="$C_SWITCH_X_SITE $DEFS"
- LIBS="$LD_SWITCH_X_SITE $LIBX $LIBS"
- CFLAGS="$C_SWITCH_X_SITE $CFLAGS"
- AC_HAVE_FUNCS(XrmSetDatabase XScreenResourceString \
- XScreenNumberOfScreen XSetWMProtocols)
- fi
-
- if test "${HAVE_X11}" = "yes"; then
- AC_COMPILE_CHECK(X11 version,
- [#include <X11/Xlib.h>],
- [
- #if XlibSpecificationRelease < 6
- fail;
- #endif
- ],
- AC_DEFINE(HAVE_X11R6))
- fi
-
- if test "${USE_X_TOOLKIT}" != "none"; then
- AC_COMPILE_CHECK(X11 toolkit version,
- [#include <X11/Intrinsic.h>],
- [
- #if XtSpecificationRelease < 6
- fail;
- #endif
- ],
- AC_DEFINE(HAVE_X11XTR6))
- fi
-
- # If netdb.h doesn't declare h_errno, we must declare it by hand.
- AC_COMPILE_CHECK(declaration of h_errno in netdb.h,
- [#include <netdb.h>],
- [
- int
- foo ()
- {
- return h_errno;
- }
- ],
- AC_DEFINE(HAVE_H_ERRNO))
-
- AC_ALLOCA
-
- # logb and frexp are found in -lm on most systems.
- AC_HAVE_LIBRARY(-lm)
- AC_HAVE_FUNCS(gettimeofday gethostname dup2 rename closedir mkdir rmdir \
- random lrand48 bcopy bcmp logb frexp fmod drem ftime res_init setsid \
- strerror fpathconf)
-
- ok_so_far=true
- AC_FUNC_CHECK(socket, , ok_so_far=)
- if test -n "$ok_so_far"; then
- AC_HEADER_CHECK(netinet/in.h, , ok_so_far=)
- fi
- if test -n "$ok_so_far"; then
- AC_HEADER_CHECK(arpa/inet.h, , ok_so_far=)
- fi
- if test -n "$ok_so_far"; then
- AC_DEFINE(HAVE_INET_SOCKETS)
- fi
-
- # Set up the CFLAGS for real compilation, so we can substitute it.
- CFLAGS="$REAL_CFLAGS"
-
- [
- #### Find out which version of Emacs this is.
- version=`grep 'defconst[ ]*emacs-version' ${srcdir}/lisp/version.el \
- | sed -e 's/^[^"]*"\([^"]*\)".*$/\1/'`
- if [ x"${version}" = x ]; then
- echo "${progname}: can't find current emacs version in
- \`${srcdir}/lisp/version.el'." >&2
- exit 1
- fi
-
- if [ -f /usr/lpp/X11/bin/smt.exp ]; then
- ]
- AC_DEFINE(HAVE_AIX_SMT_EXP)
- [
- fi
-
- #### Specify what sort of things we'll be editing into Makefile and config.h.
- ### Use configuration here uncanonicalized to avoid exceeding size limits.
- ]
- AC_SUBST(version)
- AC_SUBST(configuration)
- AC_SUBST(srcdir)
- AC_SUBST(prefix)
- AC_SUBST(exec_prefix)
- AC_SUBST(bindir)
- AC_SUBST(datadir)
- AC_SUBST(statedir)
- AC_SUBST(libdir)
- AC_SUBST(mandir)
- AC_SUBST(infodir)
- AC_SUBST(lispdir)
- AC_SUBST(locallisppath)
- AC_SUBST(lisppath)
- AC_SUBST(etcdir)
- AC_SUBST(lockdir)
- AC_SUBST(archlibdir)
- AC_SUBST(docdir)
- AC_SUBST(c_switch_system)
- AC_SUBST(c_switch_machine)
- AC_SUBST(LD_SWITCH_X_SITE)
- AC_SUBST(LD_SWITCH_X_SITE_AUX)
- AC_SUBST(C_SWITCH_X_SITE)
- AC_SUBST(CFLAGS)
- AC_SUBST(X_TOOLKIT_TYPE)
- AC_SUBST(machfile)
- AC_SUBST(opsysfile)
-
- AC_DEFINE_UNQUOTED(EMACS_CONFIGURATION, "\"${configuration}\"")
- AC_DEFINE_UNQUOTED(config_machfile, "\"${machfile}\"")
- AC_DEFINE_UNQUOTED(config_opsysfile, "\"${opsysfile}\"")
- AC_DEFINE_UNQUOTED(LD_SWITCH_X_SITE, ${LD_SWITCH_X_SITE})
- AC_DEFINE_UNQUOTED(LD_SWITCH_X_SITE_AUX, ${LD_SWITCH_X_SITE_AUX})
- AC_DEFINE_UNQUOTED(C_SWITCH_X_SITE, ${C_SWITCH_X_SITE})
- AC_DEFINE_UNQUOTED(UNEXEC_SRC, ${UNEXEC_SRC})
-
- [
- if [ "${HAVE_X_WINDOWS}" = "yes" ] ; then
- ] AC_DEFINE(HAVE_X_WINDOWS) [
- fi
- if [ "${USE_X_TOOLKIT}" != "none" ] ; then
- ] AC_DEFINE(USE_X_TOOLKIT) [
- fi
- if [ "${HAVE_X11}" = "yes" ] ; then
- ] AC_DEFINE(HAVE_X11) [
- fi
- if [ "${HAVE_XFREE386}" = "yes" ] ; then
- ] AC_DEFINE(HAVE_XFREE386) [
- fi
- if [ "${HAVE_X_MENU}" = "yes" ] ; then
- ] AC_DEFINE(HAVE_X_MENU) [
- fi
- if [ "${GNU_MALLOC}" = "yes" ] ; then
- ] AC_DEFINE(GNU_MALLOC) [
- fi
- if [ "${REL_ALLOC}" = "yes" ] ; then
- ] AC_DEFINE(REL_ALLOC) [
- fi
- if [ "${LISP_FLOAT_TYPE}" = "yes" ] ; then
- ] AC_DEFINE(LISP_FLOAT_TYPE) [
- fi
-
- # ====================== Developer's configuration =======================
-
- # The following assignments make sense if you're running Emacs on a single
- # machine, one version at a time, and you want changes to the lisp and etc
- # directories in the source tree to show up immediately in your working
- # environment. It saves a great deal of disk space by not duplicating the
- # lisp and etc directories.
-
- if [ "$run_in_place" = "1" ]; then
- lispdir='${srcdir}/lisp'
- locallisppath='${srcdir}/site-lisp'
- etcdir='${srcdir}/etc'
- lockdir='${srcdir}/lock'
- # We used to make archlibdir and docdir absolute,
- # but that caused trouble with automounters.
- archlibdir='${srcdir}/lib-src'
- docdir='${srcdir}/etc'
- infodir='${srcdir}/info'
- elif [ "$single_tree" = "1" ]; then
- if [ "$exec_prefix_specified" = "" ]; then
- exec_prefix='${prefix}'
- fi
- if [ "$bindir_specified" = "" ]; then
- bindir='${exec_prefix}/bin/${configuration}'
- fi
- if [ "$datadir_specified" = "" ]; then
- datadir='${prefix}/common'
- fi
- if [ "$statedir_specified" = "" ]; then
- statedir='${prefix}/common'
- fi
- if [ "$libdir_specified" = "" ]; then
- libdir='${bindir}'
- fi
- if [ "$lispdir_specified" = "" ]; then
- lispdir='${prefix}/common/lisp'
- fi
- if [ "$locallisppath_specified" = "" ]; then
- locallisppath='${prefix}/common/site-lisp'
- fi
- if [ "$lockdir_specified" = "" ]; then
- lockdir='${prefix}/common/lock'
- fi
- if [ "$archlibdir_specified" = "" ]; then
- archlibdir='${libdir}/etc'
- fi
- if [ "$etcdir_specified" = "" ]; then
- etcdir='${prefix}/common/data'
- fi
- if [ "$docdir_specified" = "" ]; then
- docdir='${prefix}/common/data'
- fi
- fi
-
- #### Report on what we decided to do.
- echo "
-
- Configured for \`${canonical}'.
-
- Where should the build process find the source code? ${srcdir}
- What operating system and machine description files should Emacs use?
- \`${opsysfile}' and \`${machfile}'
- What compiler should emacs be built with? ${CC} ${CFLAGS}
- Should Emacs use the GNU version of malloc? ${GNU_MALLOC}${GNU_MALLOC_reason}
- Should Emacs use the relocating allocator for buffers? ${REL_ALLOC}
- What window system should Emacs use? ${window_system}
- What toolkit should Emacs use? ${USE_X_TOOLKIT}${x_includes+
- Where do we find X Windows header files? }${x_includes}${x_libraries+
- Where do we find X Windows libraries? }${x_libraries}
-
- "
-
- # Remove any trailing slashes in these variables.
- test -n "${prefix}" &&
- prefix=`echo "${prefix}" | sed 's,\([^/]\)/*$,\1,'`
- test -n "${exec_prefix}" &&
- exec_prefix=`echo "${exec_prefix}" | sed 's,\([^/]\)/*$,\1,'`
- ]
- AC_OUTPUT(Makefile lib-src/Makefile.in oldXMenu/Makefile lwlib/Makefile src/Makefile.in, [
-
- # Build src/Makefile from ${srcdir}/src/Makefile.in. This must be done
- # after src/config.h is built, since we rely on that file.
-
- changequote(,)dnl The horror, the horror.
- # Now get this: Some word that is part of the ${srcdir} directory name
- # or the ${configuration} value might, just might, happen to be an
- # identifier like `sun4' or `i386' or something, and be predefined by
- # the C preprocessor to some helpful value like 1, or maybe the empty
- # string. Needless to say consequent macro substitutions are less
- # than conducive to the makefile finding the correct directory.
- undefs="`echo $top_srcdir $configuration $canonical |
- sed -e 's/[^a-zA-Z0-9_]/ /g' -e 's/^/ /' -e 's/ *$//' \
- -e 's/ */ -U/g' -e 's/-U[0-9][^ ]*//g' \
- `"
- changequote([,])dnl
-
- echo creating lib-src/Makefile
- ( cd lib-src
- rm -f junk.c junk1.c junk2.c
- sed -e '/start of cpp stuff/q' \
- < Makefile.in > junk1.c
- sed -e '1,/start of cpp stuff/d'\
- -e 's@/\*\*/#\(.*\)$@/* \1 */@' \
- < Makefile.in > junk.c
- $CPP $undefs -I. -I$top_srcdir/src $CPPFLAGS junk.c | \
- sed -e 's/^ / /' -e '/^#/d' -e '/^[ ]*$/d' > junk2.c
- cat junk1.c junk2.c > Makefile.new
- rm -f junk.c junk1.c junk2.c
- chmod 444 Makefile.new
- mv -f Makefile.new Makefile
- )
-
- echo creating src/Makefile
- ( cd src
- rm -f junk.c junk1.c junk2.c
- sed -e '/start of cpp stuff/q' \
- < Makefile.in > junk1.c
- sed -e '1,/start of cpp stuff/d'\
- -e 's@/\*\*/#\(.*\)$@/* \1 */@' \
- < Makefile.in > junk.c
- $CPP $undefs -I. -I$top_srcdir/src $CPPFLAGS junk.c | \
- sed -e 's/^ / /' -e '/^#/d' -e '/^[ ]*$/d' > junk2.c
- cat junk1.c junk2.c > Makefile.new
- rm -f junk.c junk1.c junk2.c
- chmod 444 Makefile.new
- mv -f Makefile.new Makefile
- )])
-